程序正确性:指一个程序在所有规定的输入条件下,能够满足其规格说明(specification)并产生符合预期的输出与行为的性质。常见讨论包括:是否对所有情况都算对(部分/完全正确性)、是否一定会结束(终止性)等。
/ˈproʊɡræm ˈkɔːrɛktnəs/
A correct program gives the right output for every valid input.
一个正确的程序会对每一个有效输入给出正确输出。
To prove program correctness, engineers often define precise specifications and use invariants to show the code meets them in every step.
为了证明程序正确性,工程师常会先给出精确的规格说明,并使用不变式来证明代码在每一步都满足这些要求。
program 来自希腊语 programma(“公开写下的东西、公告”),经由拉丁语与法语进入英语,后来在现代语境中扩展为“计算机程序”。
correctness 由 correct(正确的,源自拉丁语 correctus,意为“纠正过的”)加名词后缀 -ness 构成,表示“正确这一性质”。合在一起即“程序的正确性/正确程度”。